package com.beiding.t;

/**
 * @author 丁常磊
 * @date 2022/5/16 10:00
 */

public class 比对业务数据 {
//    public static void main(String[] args) throws IOException {
//
//        FileWriter fileWriter = new FileWriter("Functions:\\项目\\线上报表\\数据缺失.txt");
//
//        LocalComputeResource<ValueNode> valueNodeLocalComputeResource = LocalComputeResource.createInstance(8);
//
//        CsvDatasource csv1 = new CsvDatasource("csv", new FileReader("Functions:\\项目\\线上报表\\我516-3.csv"), true);
//        CsvDatasource csv2 = new CsvDatasource("csv", new FileReader("Functions:\\项目\\线上报表\\业务提供的数据.csv"), true);
//        csv1
//                .useComputeResource(valueNodeLocalComputeResource)
//                .query().le("shopid", "{6089}")
//                .branchNode()
//                .nameAs("技术导出数据")
//                .fullJoin(
//                        csv2
//                                .useComputeResource(valueNodeLocalComputeResource)
//                                .query().lt("门店编码", "{6089}")
//                                .branchNode()
//                                .nameAs("业务导出数据")
//
//                ).on(Query.eq("技术导出数据.channel_sheetno", "业务导出数据.订单号"))
//                /*
//                //查询数据不一致
//                .select()
//                .sel("业务导出数据.订单号","订单号")
//                .sel(Case.of("技术导出数据.order_type").when("{1}","{正向订单}").when("{2}","{逆向订单}").other("{未知}"),"订单类型")
//                .sel(Cast.of("技术导出数据.total_sale_value", Double.class), "技术导出收入值")
//                .sel(Cast.of("业务导出数据.收入金额", Double.class), "业务导出收入值")
//                .query().not().eq("技术导出收入值", "业务导出收入值")*/
////
//                //数据丢失
//                .query()
//                .undefined("技术导出数据").or().undefined("业务导出数据")
//
//                .exec()
//                .visit((valueNode, branchNode) -> {
//
////                    System.out.println(Thread.currentThread());
//
//                    System.out.println(valueNode.formatText());
//                    /*Object o = valueNode.get("o1.channel_sheetno");
//                    Object o1 = valueNode.get("o2.订单号");
//                    System.out.println("第一个key:" + o + "   第二个key:" + o1);*/
//
//                    StringBuilder builder = new StringBuilder();
//
//                    builder.append("\n====================\n");
//
//                    builder.append(valueNode.formatText());
//
//                    try {
//                        fileWriter.write(builder.toString());
//                        fileWriter.flush();
//
//                    } catch (Exception e) {
//
//                    }
//
//
//                });
//
//    }

}
